Main Memory Stubs to Simulate Heap and Stack Memory Behavior
نویسندگان
چکیده
Dynamic performance stubs provide a framework for the simulation of the performance behavior of software modules and functions, allowing many to be used as an extension to software performance engineering methodologies. The methodology of dynamic performance stubs can also be used for gain oriented performance improvements and it is also possible to identify “hidden” bottlenecks and to prioritize optimization possibilities. Main memory stubs are defined to improve the simulation possibilities of the dynamic performance stubs framework. They are able to simulate the heap and stack behavior of software modules or functions. This paper verifies the usability of the given method and provides an algorithm to use this functionality in real-world scenarios. Additionally, the algorithm is evaluated by means of a proof of concept. Moreover, steps towards using main memory stubs are presented. We have shown that main memory stubs can be used to simulate the heap and stack behavior.
منابع مشابه
The Concept of Memory Stubs as a Specialization of Dynamic Performance Stubs to Simulate Memory Access Behavior
Dynamic performance stubs provide a framework for the simulation of the performance behavior of software modules and functions. Stubs can be used for a cost-benefit analysis of the gain from performance optimization and therefore, for a gain oriented performance improvement, and can be also be used to identify “hidden” bottlenecks and the most relevant candidates for optimization. This paper ev...
متن کاملCUP: Comprehensive User-Space Protection for C/C++
Memory corruption vulnerabilities in C/C++ applications enable attackers to execute code, change data, and leak information. Current memory sanitizers do not provide comprehensive coverage of a program’s data. In particular, existing tools focus primarily on heap allocations with limited support for stack allocations and globals. Additionally, existing tools focus on the main executable with li...
متن کاملMcGill University School of Computer Science Sable Research Group Memory Abstractions for Speculative Multithreading
Speculative multithreading is a promising technique for automatic parallelization. However, our experience with a software implementation indicates that there is significant overhead involved in managing the heap memory internal to the speculative system and significant complexity in correctly managing the call stack memory used by speculative tasks. We first describe a specialized heap managem...
متن کاملHeaps and Stacks in Distributed Shared Memory
Software-based distributed shared memory (DSM) systems do usually not provide any means to use shared memory regions as stacks or via an efficient heap memory allocator. Instead DSM users are forced to work with very rudimentary and coarse grain memory (de-)allocation primitives. As a consequence most DSM applications have to “reinvent the wheel”, that is to implement simple stack or heap seman...
متن کاملPractical Data Location Obfuscation
Software running on an open architecture, such as the PC, is vulnerable to inspection and modification. This is a concern, as software may consist of or provide access to valuable information. As a result, several defenses against program understanding and modification have been proposed in literature. The approach discussed in this paper complements existing work and focuses on hiding the actu...
متن کامل